// api/file.js
// 文件管理相关 API

const { get, post, delete: del, upload } = require('../utils/request')

/**
 * 单文件上传
 * @param {string} filePath 文件路径
 * @param {Object} formData 额外表单数据
 */
function uploadFile(filePath, formData = {}) {
  return upload('/files/upload', filePath, formData)
}

/**
 * 获取文件信息
 * @param {number} fileId 文件ID
 */
function getFileInfo(fileId) {
  return get(`/files/${fileId}`)
}

/**
 * 获取文件访问URL
 * @param {number} fileId 文件ID
 */
function getFileUrl(fileId) {
  return get(`/files/${fileId}/url`)
}

/**
 * 删除文件
 * @param {number} fileId 文件ID
 */
function deleteFile(fileId) {
  return del(`/files/${fileId}`)
}

module.exports = {
  uploadFile,
  getFileInfo,
  getFileUrl,
  deleteFile
}